package com.starry.core.security.domain;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.starry.core.common.enums.UserTypeEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * 登录用户信息
 *
 * @Author xiaoke
 */

@JsonSerialize
@JsonIgnoreProperties(ignoreUnknown = true)
@Data
public class BaseUser {

    /**
     * 主键
     */
    private Long id;
    /**
     * 用户名
     */
    @Schema(description = "用户名")
    private String username;
    /**
     * 密码
     */
    @Schema(description = "密码")
    private String password;
    /**
     * 昵称
     */
    @Schema(description = "昵称")
    private String name;
    /**
     * 邮箱
     */
    @Schema(description = "邮箱")
    private String email;
    /**
     * 手机号码
     */
    @Schema(description = "手机号码")
    private String phone;
    /**
     * 用户类型
     */
    @Schema(description = "用户类型")
    private UserTypeEnum userType;

    /**
     * 头像
     */
    @Schema(description = "头像")
    private String avatar;

    /**
     * 租户ID
     */
    private Long tenantId;
}
